package com.decent.manager.system.dto;

import cn.hutool.core.util.ObjectUtil;
import com.decent.common.entity.manager.SystemRole;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.ToString;

import javax.validation.constraints.NotNull;
import java.util.List;

/**
 * 系统角色数据传输对象
 *
 * @author wangyan
 **/
@ToString(callSuper = true)
@EqualsAndHashCode(callSuper = true)
@Data
public class SystemRoleDTO extends SystemRole {
    private static final long serialVersionUID = -2576754749049401180L;

    /**
     * 分页
     */
    private Integer pageNumber;
    /**
     * 分页大小
     */
    private Integer pageSize;

    /**
     * 授权菜单
     */
    @NotNull(message = "请选择要绑定的资源", groups = {GrantMenu.class})
    private List<Long> grantMenuIdList;

    /**
     * 角色
     */
    private List<Long> roleIds;

    /**
     * 修改操作参数判空
     *
     * @return true：所有参数均为空：false：有修改入参；
     */
    public boolean emptyUpdateParam() {
        return ObjectUtil.isAllEmpty(super.getRoleName(), super.getRoleSort(), super.getRemark(), super.getRoleStatus());
    }
}
